<?php
include_once '../classes/design.php';
include_once '../classes/dao.php';
include_once '../classes/marcador.php';

$design = new Design("..");
$design->adicionar_form("form_busca");
$design->imprimir_topo(false, false);

$dao = new DAO();

if (isset($_REQUEST["texto_busca"])) {
	$texto_busca = preg_replace("/ +/", " ", $_REQUEST["texto_busca"]);
}
else {
	$texto_busca = "";
}

$ord_campo = "titulo";
$ord_direcao = "ASC";

if (isset($_REQUEST["parte_missa"])) {
	$parte_missa = $_REQUEST["parte_missa"];
}
echo "
 <script type=\"text/javascript\">
 function escolher(id, titulo, tom) {
";
if (isset($parte_missa)) {
	echo "parent.adicionarMusica(id, titulo, tom, '$parte_missa');";
}
else {
	echo "parent.adicionarMusicaForm(id, titulo, tom, '');";
}
echo "
	parent.$.fn.colorbox.close();
 }
 \$(document).ready(function() {
 	\$(\"#texto_busca\").focus();
 });
 </script>

 <script type=\"text/javascript\" src=\"../javascript/funcoes.js\"></script>
 <script type=\"text/javascript\" src=\"../javascript/validacao.js\"></script>
 <p/>
 <form method=\"post\" id=\"form_busca\" action=\"".$_SERVER["PHP_SELF"]."\">
 	Busca por músicas: <input type=\"text\" id=\"texto_busca\" name=\"texto_busca\" alt=\"Busca|Obrig|ComprimentoMinimo.3\" onkeyup=\"javascript: preencher(this, 'SOLETRASEESPACO', event);\" style=\"width: 300px;\" value=\"".htmlentities($texto_busca, ENT_QUOTES, "UTF-8")."\"/>
";
if (isset($_REQUEST["parte_missa"])) {
	echo "<input type=\"hidden\" name=\"parte_missa\" value=\"$parte_missa\" />";
}
echo "
 	<button type=\"submit\">Pesquisar</button>
 </form>
";

if ($texto_busca != "") {
	$musicas = $dao->consulta_musicas($texto_busca, $ord_campo, $ord_direcao);
	$numero = count($musicas);
	if ($numero == 0) {
		echo "Não foi encontrada <b>nenhuma</b> música na busca por <b>\"$texto_busca\"</b>";
	}
	else {
		if ($numero == 1) {
			echo "Foi encontrado <b>1</b> registro";
		}
		else {
			echo "Foram encontrados <b>$numero</b> registros";
		}
		echo "
		 de música na busca por <b>\"$texto_busca\"</b>.
		 <table border=\"1\" style=\"margin-top: 40px;\">
		 	<tr>
		 		<th>Escolher</th>
		 		<th>Música</th>
		 		<th>De quem é</th>
		 		<th>Tom padrão</th>
		 		<th>Letra</th>
		 		<th>Tags</th>
		 		<th>Links</th>
		 	</tr>
		";
		foreach ($musicas as $indice => $musica) {
			$mostrar_observacao = $dao->observacao_de_musica_contem_busca($texto_busca, $musica);
			echo "
			 <tr>
			 	<td align=\"center\" 
			";
			if ($mostrar_observacao) {
				echo " rowspan=\"2\"";
			}
			echo ">
					<a href=\"javascript: void(0);\" onclick=\"javascript: escolher(".$musica->get_id().", '".$musica->get_titulo()."', '".$musica->get_tom_padrao()."');\">".$design->get_imagem("ok.gif")."</a>
				</td>
			 	<td
			";
			if ($mostrar_observacao) {
				echo " rowspan=\"2\"";
			}
			echo "><a href=\"form.php?id=".$musica->get_id()."\" target=\"_blank\">".Marcador::marcar($texto_busca, $musica->get_titulo(), "marca")."</a></td>
			 	<td>".Marcador::marcar($texto_busca, $musica->get_de_quem_eh(), "marca")."</td>
			 	<td align=\"center\">".$musica->get_tom_padrao()."</td>
			 	<td>".Marcador::marcar($texto_busca, $musica->get_letra_br_truncada(100, $texto_busca), "marca")."</td>
			 	<td>
			";
			$separador = "";
			foreach ($musica->get_tags() as $tag) {
				echo $separador."- ".Marcador::marcar($texto_busca, $tag->get_tag(), "marca");
				$separador = "<br/>";
			}
			echo "
				</td>
			 	<td>
			";
			$separador = "";
			foreach ($musica->get_links() as $link) {
				echo $separador."<a href=\"".$link->get_url()."\" target=\"_blank\">".$link->get_tipo()."</a>";
				$separador = "<br/>";
			}
			echo "
				</td>
			 </tr>
			";
			if ($mostrar_observacao) {
				echo "
				 <tr>
				 	<td colspan=\"5\"><b>Observações:</b> "
				 	.Marcador::marcar($texto_busca, $musica->get_observacoes_br_truncado(100, $texto_busca), "marca")."</td>
				 </tr>
				";
			}
				
		}
		echo "</table>";
	}
}
?>





<?php 
$design->imprimir_fim(false);
?>